package com.xzj.admin.resource.sync.domain.entity;

import com.xzj.common.core.domain.entity.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;

/**
 * @program: xzj-admin
 * @ClassName: ResMessageSource
 * @description: 资源消息源;
 * @author: XiaZunJun
 * @create: 2024-10-31
 */
@Schema(name = "资源消息源",description = "")
@Data
@EqualsAndHashCode(callSuper = true)
public class ResMessageSource extends BaseEntity implements Serializable{
    /** 消息源ID */
    @Schema(name = "消息源ID",description = "")
    private String sourceId ;

    /** 目标源ID */
    @Schema(name = "目标源ID",description = "")
    private String targetId ;

    /** 目标源ID */
    @Schema(name = "目标源编码",description = "")
    private String targetCode ;


    /** 主消息源Id */
    @Schema(name = "主消息源Id",description = "")
    private String parentId ;

    private String parentName;


    /** 名称 */
    @Schema(name = "名称",description = "")
    private String sourceName ;


    /** 主题 */
    @Schema(name = "主题",description = "")
    private String sourceTheme ;


    /** 解析主标签 */
    @Schema(name = "解析主标签",description = "")
    private String sourceMainTag ;


    /** 需解析的同级标签 */
    @Schema(name = "需解析的同级标签",description = "")
    private String sourcePeerTag ;


    /** 执行次序 */
    @Schema(name = "执行次序",description = "")
    private Integer sourceExecuteOrder ;


    /** 云资源ID */
    @Schema(name = "云资源ID",description = "")
    private String cloudId ;


    /** 云资源类型 */
    @Schema(name = "云资源类型",description = "")
    private String cloudType ;


    /** 状态 */
    @Schema(name = "状态",description = "")
    private String sourceStatus ;


    /** id转换脚本 */
    @Schema(name = "id转换脚本",description = "")
    private String keyScriptId ;


    /** 推送前置脚本 */
    @Schema(name = "推送前置脚本",description = "")
    private String pushPreScript ;


    /** 数据操作前置脚本 */
    @Schema(name = "数据操作前置脚本",description = "")
    private String databasePreScript ;

    /** cloudId:cloudType */
    private String cloudOption;

    private String keyScriptName;
    private String pushPreScriptName;
    private String databasePreScriptName;

    private String targetId;

    private String targetName;

    private String targetCode;

}